/* keyframes for loaders */
@theme {
  @keyframes typing {
    0%,
    100% {
      transform: translateY(0);
      opacity: 0.5;
    }
    50% {
      transform: translateY(-2px);
      opacity: 1;
    }
  }

  @keyframes loading-dots {
    0%,
    100% {
      opacity: 0;
    }
    50% {
      opacity: 1;
    }
  }

  @keyframes wave {
    0%,
    100% {
      transform: scaleY(1);
    }
    50% {
      transform: scaleY(0.6);
    }
  }

  @keyframes blink {
    0%,
    100% {
      opacity: 1;
    }
    50% {
      opacity: 0;
    }
  }

  @keyframes text-blink {
    0%,
    100% {
      color: var(--primary);
    }
    50% {
      color: var(--muted-foreground);
    }
  }

  @keyframes bounce-dots {
    0%,
    100% {
      transform: scale(0.8);
      opacity: 0.5;
    }
    50% {
      transform: scale(1.2);
      opacity: 1;
    }
  }

  @keyframes thin-pulse {
    0%,
    100% {
      transform: scale(0.95);
      opacity: 0.8;
    }
    50% {
      transform: scale(1.05);
      opacity: 0.4;
    }
  }

  @keyframes pulse-dot {
    0%,
    100% {
      transform: scale(1);
      opacity: 0.8;
    }
    50% {
      transform: scale(1.5);
      opacity: 1;
    }
  }

  @keyframes shimmer-text {
    0% {
      background-position: 150% center;
    }
    100% {
      background-position: -150% center;
    }
  }

  @keyframes wave-bars {
    0%,
    100% {
      transform: scaleY(1);
      opacity: 0.5;
    }
    50% {
      transform: scaleY(0.6);
      opacity: 1;
    }
  }

  @keyframes shimmer {
    0% {
      background-position: 200% 50%;
    }
    100% {
      background-position: -200% 50%;
    }
  }

  @keyframes spinner-fade {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
}
